// pages/equityCardDetail/equityCardDetail.js
const app = getApp()
import {
  postRequest,
  getRequest,
  postParamsRequest,
} from '../../api/request'
Page({

  /**
   * 页面的初始数据
   */
  data: {
    themeColor: app.globalData.themeColor,
    subColor: app.globalData.subColor,
    btnColor: app.globalData.btnColor,
    myEqCord1: app.globalData.myEqCord1,
    myEqCord2: app.globalData.myEqCord2,
    myEqCord3: app.globalData.myEqCord3,
    myEqCord4: app.globalData.myEqCord4,
    myEqCord5: app.globalData.myEqCord5,
    myCouponPackage: app.globalData.myCouponPackage,
    id: '',
    dataInfo: "",
    submitLock: false,
    buyFinish: false, //购买完成
    showCouponList: false,
    couponListInfo: {},
  },

  //打开优惠券弹窗
  openShowCouponList() {
    this.setData({
      showCouponList: true,
    });
  },

  //关闭优惠券弹窗
  hideShowCouponList() {
    this.setData({
      showCouponList: false,
    });
  },

  //显示优惠券详情
  showCouponInfo(e) {
    e.currentTarget.dataset.info.coupon.scope = JSON.parse(e.currentTarget.dataset.info.coupon.scope);
    this.setData({
      showCouponList: true,
      couponListInfo: e.currentTarget.dataset.info,
    });
  },

  //获取权益卡详情
  getWxappEquityCard() {
    let that = this;
    wx.showLoading({
      title: '加载中...',
      mask: true,
    })
    getRequest("/api/activity/getCouponPackage", {
      id: that.data.id,
      memberId: app.myInfo.memberId,
    }).then((res) => {
      console.log(res.data.data);
      //判断使用默认图片
      if (res.data.data.thumb == '') {
        res.data.data.thumb = that.data.myCouponPackage;
      }
      if (res.data.data != null) {
        that.setData({
          dataInfo: res.data.data,
        })
      }
      wx.hideLoading();
    }).catch((err) => {
      wx.hideLoading();
    });
  },

  //升级会员
  upgradeVip() {
    wx.redirectTo({
      url: '../storedValue/storedValue'
    })
  },

  //购买权益卡
  createEquityCardOrder() {
    let that = this;
    if (this.data.submitLock) {
      return;
    }
    let data = {
      couponPackageId: that.data.dataInfo.id,
      memberId: app.myInfo.memberId,
    };

    this.setData({
      submitLock: true,
    })
    wx.showLoading({
      title: '加载中...',
      mask: true,
    })
    postParamsRequest('/api/activity/createCouponPackageOrder', data).then(res2 => {
      if (res2.data.code == 0) {
        let data = res2.data.data;
        console.log(data);
        wx.requestPayment({
          'timeStamp': data.timeStamp,
          'nonceStr': data.nonceStr,
          'package': data.package,
          'signType': data.signType,
          'paySign': data.paySign,
          'success': function (res3) {
            console.log(res3);
            wx.hideLoading();
            that.setData({
              submitLock: false,
              buyFinish: true,
            })

          },
          'fail': function (err) {
            console.log(err);
            wx.hideLoading();
            that.setData({
              submitLock: false,
            })
            wx.showToast({
              title: '支付失败',
            })
          }
        })
      }
      this.setData({
        submitLock: false,
      })
      wx.hideLoading()
    }).catch(err => {
      wx.showModal({
        title: '提示',
        content: err.data.msg || '网络错误',
      })
      console.log('error: ', err)
      this.setData({
        submitLock: false,
      })
      wx.hideLoading()
    })
  },

  //返回卡券中心
  backEquityCard() {
    let pages = getCurrentPages();
    let prevPage = pages[pages.length - 2]; //prevPage 是获取上一个页面的js里面的pages的所有信息。 -2 是上一个页面，-3是上上个页面以此类推。
    //将我们想要传递的参数在这里直接setData。上个页面就会执行这里的操作。
    prevPage.setData({
      dataType: 1,
      myCarType: 1,
    })
    wx.navigateBack({
      delta: 1 // 返回上一级页面。
    })
  },

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad(options) {
    if (options.id) {
      this.setData({
        id: options.id,
      })
      //如果没有token,则需要重新登录获取个人信息等，避免缺少id导致数据无法获取
      if (app.token == "" || app.token == undefined) {
        app.initLogin().then(res => {
          this.getWxappEquityCard();
        }).catch(err => {})
      } else {
        this.getWxappEquityCard();
      }

    }
  },

  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady() {

  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow() {

  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide() {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload() {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh() {

  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom() {

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage() {

  }
})